package com.iye.puretennis.custom;

import android.annotation.SuppressLint;
import android.content.ClipData;
import android.content.ClipDescription;
import android.view.View;

/**
 * Created with IntelliJ IDEA.
 * User: jing wu
 * Date: 2015/1/21
 * Time: 10:37
 */
public class DragLongClickListener implements View.OnLongClickListener{

    private int position;


    public DragLongClickListener(int position) {
        this.position = position;
    }


    @SuppressLint("NewApi")
    @Override
    public boolean onLongClick(View v) {

        // 创建一个ClipData对象
        // 这里分为两步，第一步中方法ClipData.newPlainText()可以创建一个纯文本ClipData

        // 根据ImageView的标签创建一个ClipData.Item对象
        String positionText = position + "";

        ClipData.Item item = new ClipData.Item(positionText);

        // 使用标签，纯文本和已经创建的item来创建一个ClipData对象
        // 这里将在ClipData中创建一个新的ClipDescription对象并设置它的MIME类型为"text/plain"

        ClipData dragData = new ClipData(positionText,
                new String[]{ClipDescription.MIMETYPE_TEXT_PLAIN}, item);

//        // 实例化拖拽影子.
        View.DragShadowBuilder myShadow = new DragShadowBuilder(v);

        // 开始拖拽

        return v.startDrag(dragData, // 被拖拽的数据
                myShadow, // 拖拽的影子
                null, // 不需要使用本地数据
                0 // 标记（目前用不到，设置为0）
        );
    }
}
